翻訳と辞書
Words near each other
・ Tree spade
・ Tree spanner
・ Tree spiking
・ Tree sponge
・ Tree Spring, Indiana
・ Tree squirrel
・ Tree stand
・ Tree Streets Historic District
・ Tree Streets Historic District (Waynesboro, Virginia)
・ Tree structure
・ Tree Studio Building and Annexes
・ Tree stump
・ Tree allometry
・ Tree and Leaf
・ Tree Assistance Program
Tree automaton
・ Tree Avenue or tree alley (allée)
・ Tree bat
・ Tree bog
・ Tree box filter
・ Tree breeding
・ Tree Canada
・ Tree Care Industry Association
・ Tree Carr
・ Tree City USA
・ Tree Climbers
・ Tree climbing
・ Tree Colored See
・ Tree conservation areas in Singapore
・ Tree Cornered Tweety


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Tree automaton : ウィキペディア英語版
Tree automaton

A tree automaton is a type of state machine. Tree automata deal with tree structures, rather than the strings of more conventional state machines.
The following article deals with branching tree automata, which correspond to regular languages of trees. For a different notion of tree automaton, see tree walking automaton.
As with classical automata, finite tree automata (FTA) can be either a deterministic automaton or not. According to how the automaton processes the input tree, finite tree automata can be of two types: (a) bottom up, (b) top down. This is an important issue, as although non-deterministic (ND) top-down and ND bottom-up tree automata are equivalent in expressive power, deterministic top-down automata are strictly less powerful than their deterministic bottom-up counterparts, because tree properties specified by deterministic top-down tree automata can only depend on path properties. (Deterministic bottom-up tree automata are as powerful as ND tree automata.)
==Definitions==
A ranked alphabet is a pair of an ordinary alphabet ''F'' and a function ''Arity'': ''F''→ℕ. Each letter in ''F'' has its arity so it can be used to build terms. Nullary elements (of zero arity) are also called constants. Terms built with unary symbols and constants can be considered as strings. Higher arities leads to proper trees.
A bottom-up finite tree automaton over ''F'' is defined as a tuple
(''Q'', ''F'', ''Q''''f'', Δ),
where ''Q'' is a set of unary letters used as states, ''F'' is a ranked alphabet, ''Q''''f'' ⊆ ''Q'' is a set of final states, and Δ is a set of transition rules of the form ''f''(''q''1(''x''1),...,''q''''n''(''x''''n'')) → ''q''(''f''(''x''1,...,''x''''n'')), for an ''n''-ary ''f'' ∈ ''F'', ''q'', ''q''''i'' ∈ ''Q'', and ''x''''i'' variables denoting subtrees. That is, members of Δ are rewrite rules from nodes whose childs' roots are states, to nodes whose roots are states. Thus the state of a node is deduced from the states of its children.
For ''n''=0, that is, for a constant symbol ''f'', the above transition rule definition reads ''f''() → ''q''(''f''()); often the empty parentheses are omitted for convenience: ''f'' → ''q''(''f'').
Since these transition rules for constant symbols (leaves) do not require a state, no explicitly definied initial states are needed.
A tree automaton is run on a ground term over ''F'', starting at the leaves and moving upwards, associating a run state from ''Q'' with each subterm.
The tree is accepted if its root is associated to an accepting state from ''Q''''f''.
A top-down finite tree automaton over ''F'' is defined as a tuple
(''Q'', ''F'', ''Q''''i'', Δ),
with two differences with bottom-up tree automata. First, ''Q''''i'' ⊆ ''Q'', the set of its initial states, replaces ''Q''''f''; second, its transition rules are oriented conversely:
''q''(''f''(''x''1,...,''x''''n'')) → ''f''(''q''1(''x''1),...,''q''''n''(''x''''n'')), for an ''n''-ary ''f'' ∈ ''F'', ''q'', ''q''''i'' ∈ ''Q'', and ''x''''i'' variables denoting subtrees.
That is, members of Δ are here rewrite rules from nodes whose roots are states to nodes whose childs' roots are states.
A top-down automaton starts at the root and moves downward along branches of the tree, associating along a run a state with each subterm inductively.
A tree is accepted if every branch can be gone through this way.
A bottom-up tree automaton is called deterministic (abbreviated DFTA) if no two rules from Δ have the same left hand side; otherwise it is called nondeterministic (NFTA).
Non-deterministic top-down tree automata have the same expressive power as non-deterministic bottom-up ones;
the transition rules are simply reversed, and the final states become the initial states.
In contrast, deterministic top-down tree automata are less powerful than their bottom-up counterparts, because in a deterministic tree automaton no two transition rules have the same left-hand side. For tree automata, transition rules are rewrite rules; and for top-down ones, the left-hand side will be parent nodes. Consequently a deterministic top-down tree automaton will only be able to test for tree properties that are true in all branches, because the choice of the state to write into each child branch is determined at the parent node, without knowing the child branches contents.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Tree automaton」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.